<?php

/***

LZRoster: A roster for World of Warcraft.
Copyright (C) 2007  Emmanuel Cron

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

***/

require_once "class/Load.class.php";
require_once "class/Inputs.class.php";
require_once "class/Status.class.php";
require_once "class/Config.class.php";
require_once "class/Localization.class.php";
require_once "class/SessionRoster.class.php";
require_once "class/LocaleContainer.class.php";
require_once "class/SubscriptionManager.class.php";

// For loading information in footer
Load::GetInstance();

// Session initialization
SessionRoster::GetInstance();

if (Inputs::GetInstance()->HasGetData('l')) {
	if (LocaleContainer::GetInstance()->HasLocale(Inputs::GetInstance()->Get('l'))) {
		if (SessionRoster::GetInstance()->IsConnected()) {
			$subscription_manager = SubscriptionManager::GetInstance();
			
			$subscription_manager->SetLocale( SessionRoster::GetInstance()->GetAccountId(), Inputs::GetInstance()->Get('l') );
		}
		
		SessionRoster::GetInstance()->SetLocalization(Inputs::GetInstance()->Get('l'));
		SessionRoster::GetInstance()->Redirect('change_language.php?redirect');
	} else {
		$status = Status::GetInstance();
		$status->AddError(Localization::GetInstance()->Get('invalid language'));
		
		SessionRoster::GetInstance()->SaveStatus($status);
		SessionRoster::GetInstance()->Redirect('change_language.php');
	}
}

if (Inputs::GetInstance()->HasGetData('from')) {
	SessionRoster::GetInstance()->SetDestination(Inputs::GetInstance()->Get('from'));
	SessionRoster::GetInstance()->Redirect('change_language.php');
}

if (Inputs::GetInstance()->HasGetData('redirect')) {
	SessionRoster::GetInstance()->Redirect(SessionRoster::GetInstance()->GetDestination());
}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
	<head>
		<title>LZRoster<?php echo Config::GetInstance()->HasRosterTitle() ?  " - ".Config::GetInstance()->GetRosterTitle() : null; ?></title>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<link rel="stylesheet" media="screen" type="text/css" href="styles/_.css" />
		<script type="text/javascript" src="js/overlib.js"><!-- overLIB (c) Erik Bosrup --></script>
	</head>
	<body>
		
		<?php require_once "inc/head.php"; ?>
		
		<h2><?php echo Localization::GetInstance()->Get('change language'); ?></h2>
		
		<?php
		if (SessionRoster::GetInstance()->HasStatus())
		{
		?>
			
			<p>
				<?php echo Localization::GetInstance()->Get('an error occured. please refer to the following messages'); ?>
			</p>
			
			<?php echo SessionRoster::GetInstance()->GetStatus()->GetStack_InList(); ?>
			
			<p>
				<?php echo Localization::GetInstance()->Get('you can refresh the page %s and try again', "change_language.php"); ?>
			</p>
			
		<?php
		}
		else
		{
		?>
		
		<p style="text-align: center;">
			<?php echo Localization::GetInstance()->Get('please choose language'); ?><br />
			
			<?php
			foreach(LocaleContainer::GetInstance()->GetAvailableLocales() as $l)
			{
			?>
			
				<img src="img/locale/<?php echo $l->GetImage(); ?>" alt="" style="vertical-align: middle;" /> <a href="?l=<?php echo $l->GetId(); ?>"><?php echo $l->GetName(); ?></a>
			
			<?php
			}
			?>
			
		</p>
		
		<?php
		}
		?>
		
		<?php require_once "inc/foot.php"; ?>
		
	</body>
</html>